home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / inter54e.zip / PCICFG09.ZIP / BLANK.PCI < prev    next >
Text File  |  1997-01-18  |  4KB  |  89 lines

  1. %! Detailed register description file for PCICFG.EXE by Ralf Brown
  2. %!
  3. %! Filename VVVVDDDD.PCI = Vendor VVVVh, Device DDDDh 
  4. %! Last Edit 1/18/97 by Ralf Brown
  5. %!
  6.  
  7. Everything preceding a line beginning with the six characters "!begin" is
  8. a comment and will be ignored (with the proviso that the total file size
  9. not exceed 64K).  Everything from the !begin line to a line starting with
  10. the four characters "!end" forms part of the device description, in a
  11. format similar to that used for printf().
  12.  
  13. To create your own device description file for PCICFG, copy this file to
  14. a file in the same directory containing PCICFG.EXE called VVVVDDDD.PCI,
  15. where VVVV are the four hexadecimal digits of the PCI vendor ID reported
  16. by PCICFG, and DDDD are the four hexadecimal digits of the PCI device
  17. ID.  Then, place the appropriate formatting directives between the
  18. "!begin" and "!end" lines below.
  19.  
  20.  
  21.    format spec:
  22.       everything is literal except backslashed and conversion ops
  23.       introduced by a percent sign; the percent-sign is followed by
  24.       PCI field specifier, an optional print width, and the conversion
  25.       character
  26.     
  27.       conversion characters:
  28.      <newln>  ignore the newline and paste together the two lines
  29.      %      literal percent sign
  30.      !      rest of line is a comment and is skipped
  31.      b      print number in binary
  32.      o      print number in octal
  33.      d      print number in decimal
  34.      x      print number in hexadecimal
  35.      e      print boolean value as "disable" (false) or "enable" (true)
  36.      E      print boolean value as "enable" (false) or "disable" (true)
  37.      f      print boolean value as dash (false) or check mark (true)
  38.      n      print boolean value as Y (false) or N (true), i.e. inverted
  39.      y      print boolean value as N (false) or Y (true)
  40.      (name)      print enumerated value given by enum spec "name"  (NYI)
  41.      {xyz}      print Nth character in "xyz" (prints last if N > # chars)
  42.      /lit/      print literal string if boolean is true, dashes otherwise
  43.      |a1;a2;a3;a4|  select among 2-4 alternate values (index 0-3), prints
  44.              last alternative given if N > # alternatives
  45.  
  46.       backslash conversions supported:
  47.          \t    tab character
  48.      \\    literal backslash
  49.      \X    (any X not listed above:) literal X
  50.  
  51.       PCI field specifier:
  52.      '[' hex-address ']'        entire byte at offset 'hex-address'
  53.      '[' addr ':' bitnum ']'    bit 'bitnum' of byte at offset 'addr'
  54.      '[' addr ':' bit1 '-' bit2 ']'
  55.                     bits 'bit1' to 'bit2' of byte at 'addr'
  56.          any of the above may also add the following modifiers just prior to
  57.        the closing bracket:
  58.            '<' shift        shift the field left 'shift' bits
  59.            '+' offset        add 'offset' to the field value
  60.            '<' shift '+' offset
  61.                     shift left and then add
  62.          bit numbers up to 31 are supported, and address the appropriate byte
  63.        beginning at the specified address; all fields are treated as 32-bit
  64.        values internally
  65.       Note: addresses are in hex, all other values are decimal (unsigned except
  66.          for 'offset', which may include a leading minus sign after the plus
  67.      sign introducing it)
  68.  
  69.       When printing, an explicit width greater than the item's actual width
  70.          causes the addition of padding on the left to ensure the desired
  71.      width; the padding uses blanks for all formats except binary (b),
  72.      octal (o), and hexadecimal (x) numbers, which use zeros.
  73.  
  74.  
  75. !begin
  76.  
  77.   %! insert device description here
  78.  
  79. !end
  80.  
  81. ; everything between the above !end line and a following !enum line (not
  82. ; yet implemented) is also a comment
  83.  
  84. !enum ToBeImplemented
  85.  
  86.  
  87.  
  88. %! end of file
  89.